package com.echat.elocation.protocol.entity.send;

import com.echat.elocation.protocol.entity.PackageMsg;

public class LocationUpLoadMsg extends PackageMsg {

    // 告警信息
    // byte[0-3]
    private int warningFlagField;
    // byte[4-7] 状态(DWORD(32))
    private int statusField;
    // byte[8-11] 纬度(DWORD(32))
    private float latitude;
    // byte[12-15] 经度(DWORD(32))
    private float longitude;
    // byte[16-17] 高程(WORD(16)) 海拔高度，单位为米（ m）
    // TODO ==>int?海拔
    private int elevation;
    // byte[18-19] 速度(WORD) 1/10km/h
    // TODO ==>float?速度
    private float speed;
    // byte[20-21] 方向(WORD) 0-359，正北为 0，顺时针
    private float direction;
    // byte[22-x] 时间(BCD[6]) YY-MM-DD-hh-mm-ss
    // GMT+8 时间，本标准中之后涉及的时间均采用此时区
    private String time;

    private int appendMsgId;
    private int appendMsgLength;
    private int appendMsg;

    public int getWarningFlagField() {
        return warningFlagField;
    }

    public void setWarningFlagField(int warningFlagField) {
        this.warningFlagField = warningFlagField;
    }

    public int getStatusField() {
        return statusField;
    }

    public void setStatusField(int statusField) {
        this.statusField = statusField;
    }

    public float getLatitude() {
        return latitude;
    }

    public void setLatitude(float latitude) {
        this.latitude = latitude;
    }

    public float getLongitude() {
        return longitude;
    }

    public void setLongitude(float longitude) {
        this.longitude = longitude;
    }

    public int getElevation() {
        return elevation;
    }

    public void setElevation(int elevation) {
        this.elevation = elevation;
    }

    public float getSpeed() {
        return speed;
    }

    public void setSpeed(float speed) {
        this.speed = speed;
    }

    public float getDirection() {
        return direction;
    }

    public void setDirection(float direction) {
        this.direction = direction;
    }

    public String getTime() {
        return time;
    }

    public void setTime(String time) {
        this.time = time;
    }

    public int getAppendMsgId() {
        return appendMsgId;
    }

    public void setAppendMsgId(int appendMsgId) {
        this.appendMsgId = appendMsgId;
    }

    public int getAppendMsgLength() {
        return appendMsgLength;
    }

    public void setAppendMsgLength(int appendMsgLength) {
        this.appendMsgLength = appendMsgLength;
    }

    public int getAppendMsg() {
        return appendMsg;
    }

    public void setAppendMsg(int appendMsg) {
        this.appendMsg = appendMsg;
    }

    @Override
    public String toString() {
        return "LocationUpLoadMsg{" +
                "warningFlagField=" + warningFlagField +
                ", statusField=" + statusField +
                ", latitude=" + latitude +
                ", longitude=" + longitude +
                ", elevation=" + elevation +
                ", speed=" + speed +
                ", direction=" + direction +
                ", time='" + time + '\'' +
                ", appendMsgId=" + appendMsgId +
                ", appendMsgLength=" + appendMsgLength +
                ", appendMsg=" + appendMsg +
                '}';
    }
}
